package com.xmtlxx.tms.domain.bo;

import com.xmtlxx.common.core.domain.BaseEntity;
import com.xmtlxx.common.core.validate.AddGroup;
import com.xmtlxx.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;

/**
 * 车次车辆业务对象 t_schedule_dtl
 *
 * @author xmtlxx
 * @date 2022-08-15
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("车次车辆业务对象")
public class ScheduleDtlBo extends BaseEntity {

    /**
     * 车次车辆ID
     */
    @ApiModelProperty(value = "车次车辆ID")
    private String id;

    /**
     * 车次ID
     */
    @ApiModelProperty(value = "车次ID", required = true)
    @NotBlank(message = "车次ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private String scheduleId;

    /**
     * 车辆ID
     */
    @ApiModelProperty(value = "车辆ID", required = true)
    @NotBlank(message = "车辆ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private String carId;

    /**
     * 车牌号
     */
    @ApiModelProperty(value = "车牌号", required = true)
    @NotBlank(message = "车牌号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String carNumber;

    /**
     * 驾驶员ID
     */
    @ApiModelProperty(value = "驾驶员ID", required = true)
    @NotBlank(message = "驾驶员ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private String driverId;

    /**
     * 驾驶员
     */
    @ApiModelProperty(value = "驾驶员", required = true)
    @NotBlank(message = "驾驶员不能为空", groups = { AddGroup.class, EditGroup.class })
    private String driverName;

    /**
     * 接单量
     */
    @ApiModelProperty(value = "接单量")
    private Long nums;

    /**
     * 已接单
     */
    @ApiModelProperty(value = "已接单")
    private Long takes;

    /**
     * 进行中
     */
    @ApiModelProperty(value = "进行中")
    private Long durings;

    /**
     * 已完成
     */
    @ApiModelProperty(value = "已完成")
    private Long finishes;

    /**
     * 异常数
     */
    @ApiModelProperty(value = "异常数")
    private Long errors;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态", required = true)
    @NotBlank(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String status;

    /**
     * 删除标识
     */
    @ApiModelProperty(value = "删除标识")
    private String delFlag;


}
